Platform Explorer / Nuxeo Platform 6.0

Component org.nuxeo.ecm.platform.filemanager.service.FileManagerService

Documentation

The FileManager service provide a generic service for building Documents form a simple File.

Implementation

Class: org.nuxeo.ecm.platform.filemanager.service.FileManagerService

Services

Extension Points

XML Source

<?xml version="1.0"?>
<component
  name="org.nuxeo.ecm.platform.filemanager.service.FileManagerService">

  <implementation
    class="org.nuxeo.ecm.platform.filemanager.service.FileManagerService" />

  <service>
    <provide interface="org.nuxeo.ecm.platform.filemanager.api.FileManager" />
  </service>

  <documentation>
    The FileManager service provide a generic service for building Documents
    form a simple File.
  </documentation>

  <extension-point name="plugins">
    <documentation>
      The plugin system for the FileManager give the possibility to register
      extension that will be responsible for creating a document from a given
      mime-type. The plugin should implement the
      org.nuxeo.ecm.platform.filemanager.interfaces.FileImporter interface.

      The registration of a file importer can be done like this:

      <code>
        <plugin name="myCustomFileImporter"
          class="com.example.MyFileImporterImplementationClass" enabled="true"
          order="30">
          <filter>text/plain</filter>
        </plugin>
      </code>

      The filter tag is used to know what mime-types can be used with the
      plugin. The order tag is used yo determine order between plugins.

      A plugin can override an existing plugin by reusing the same name, in this
      case the previous filters will be ignored. A plugin can be completely
      disabled by setting enabled="false".

      Similarly, to override the default behavior to import folders, custom
      folder importers are registered as follows:

      <code>
        <folderImporter name="myCustomFolderImporter"
          class="com.example.MyFolderImporterImplementationClass" />
      </code>

      The latest registered folder importer will be used in place of any other
      previously registered folder importer.

      Finally is it also possible to register CreationContainerListProvider
      implementations for a given set of document types so as to provide the
      user with a list of container suitable for new document creation.

      This feature is especially useful for the creation of new document from an
      office productivity application through the LiveEdit plugins.

      The docType is optional: no docType declaration means all types are
      handled by the extension.

      <code>
        <creationContainerListProvider name="myCustomContainerListProvider"
          class="com.example.MyCustomContainerListImplementationClass">
          <docType>File</docType>
          <docType>Note</docType>
        </creationContainerListProvider>
      </code>
    </documentation>

    <object
      class="org.nuxeo.ecm.platform.filemanager.service.extension.FileImporterDescriptor" />
    <object
      class="org.nuxeo.ecm.platform.filemanager.service.extension.FolderImporterDescriptor" />
    <object
      class="org.nuxeo.ecm.platform.filemanager.service.extension.CreationContainerListProviderDescriptor" />
  </extension-point>

  <extension-point name="unicity">
    <documentation>
      The unicity extension point adds a digest to the given field using the
      given algorithm. If the same file is already on the server, a new Message
      is send to JMS bus with DocumentLocation if the existing files.
      <code>
        <unicitySettings>
          <enabled>true</enabled>
          <algo>sha-256</algo>
          <field>file:content</field>
          <computeDigest>true</computeDigest>
        </unicitySettings>
      </code>
    </documentation>

    <object
      class="org.nuxeo.ecm.platform.filemanager.service.extension.UnicityExtension" />
  </extension-point>

  <extension-point name="versioning">
    <documentation>
      @since 5.7
      The versioning extension point defines the versioning option that will be
      used when incrementing the document version at file import (DnD,
      Import button)
      The default value will be MINOR, to keep compatibility with previous
      releases.
      Possible values are NONE, MINOR OR MAJOR (see VersioningOption enumeration)
      Other values will raise an IllegalArgumentException
      <code>
        <versioning>
          <defaultVersioningOption>MAJOR</defaultVersioningOption>
        </versioning>
      </code>
    </documentation>

    <object
      class="org.nuxeo.ecm.platform.filemanager.service.extension.VersioningDescriptor" />
  </extension-point>

</component>